package com.microservice.salmon.db.entities;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

@Table(name = "t_settlements")
public class Settlement {
    /**
     * 自增ID
     */
    @Id
    @Column(name = "settlement_id")
    private Integer settlementId;

    /**
     * 结算单号
     */
    @Column(name = "settlement_no")
    private String settlementNo;

    /**
     * 结算类型 0：手工结算 1:即时结算
     */
    @Column(name = "settlement_type")
    private Byte settlementType;

    /**
     * 店铺ID
     */
    @Column(name = "shop_id")
    private Integer shopId;

    /**
     * 商品总金额
     */
    @Column(name = "settlement_money")
    private BigDecimal settlementMoney;

    /**
     * 结算应收的佣金（不含运费)
     */
    @Column(name = "commission_fee")
    private BigDecimal commissionFee;

    /**
     * 应返还给商家的金额
     */
    @Column(name = "back_money")
    private BigDecimal backMoney;

    /**
     * 结算状态
     */
    @Column(name = "settlement_status")
    private Byte settlementStatus;

    /**
     * 结算时间
     */
    @Column(name = "settlement_time")
    private Date settlementTime;

    /**
     * 结算备注（商城填写）
     */
    private String remarks;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 获取自增ID
     *
     * @return settlement_id - 自增ID
     */
    public Integer getSettlementId() {
        return settlementId;
    }

    /**
     * 设置自增ID
     *
     * @param settlementId 自增ID
     */
    public void setSettlementId(Integer settlementId) {
        this.settlementId = settlementId;
    }

    /**
     * 获取结算单号
     *
     * @return settlement_no - 结算单号
     */
    public String getSettlementNo() {
        return settlementNo;
    }

    /**
     * 设置结算单号
     *
     * @param settlementNo 结算单号
     */
    public void setSettlementNo(String settlementNo) {
        this.settlementNo = settlementNo;
    }

    /**
     * 获取结算类型 0：手工结算 1:即时结算
     *
     * @return settlement_type - 结算类型 0：手工结算 1:即时结算
     */
    public Byte getSettlementType() {
        return settlementType;
    }

    /**
     * 设置结算类型 0：手工结算 1:即时结算
     *
     * @param settlementType 结算类型 0：手工结算 1:即时结算
     */
    public void setSettlementType(Byte settlementType) {
        this.settlementType = settlementType;
    }

    /**
     * 获取店铺ID
     *
     * @return shop_id - 店铺ID
     */
    public Integer getShopId() {
        return shopId;
    }

    /**
     * 设置店铺ID
     *
     * @param shopId 店铺ID
     */
    public void setShopId(Integer shopId) {
        this.shopId = shopId;
    }

    /**
     * 获取商品总金额
     *
     * @return settlement_money - 商品总金额
     */
    public BigDecimal getSettlementMoney() {
        return settlementMoney;
    }

    /**
     * 设置商品总金额
     *
     * @param settlementMoney 商品总金额
     */
    public void setSettlementMoney(BigDecimal settlementMoney) {
        this.settlementMoney = settlementMoney;
    }

    /**
     * 获取结算应收的佣金（不含运费)
     *
     * @return commission_fee - 结算应收的佣金（不含运费)
     */
    public BigDecimal getCommissionFee() {
        return commissionFee;
    }

    /**
     * 设置结算应收的佣金（不含运费)
     *
     * @param commissionFee 结算应收的佣金（不含运费)
     */
    public void setCommissionFee(BigDecimal commissionFee) {
        this.commissionFee = commissionFee;
    }

    /**
     * 获取应返还给商家的金额
     *
     * @return back_money - 应返还给商家的金额
     */
    public BigDecimal getBackMoney() {
        return backMoney;
    }

    /**
     * 设置应返还给商家的金额
     *
     * @param backMoney 应返还给商家的金额
     */
    public void setBackMoney(BigDecimal backMoney) {
        this.backMoney = backMoney;
    }

    /**
     * 获取结算状态
     *
     * @return settlement_status - 结算状态
     */
    public Byte getSettlementStatus() {
        return settlementStatus;
    }

    /**
     * 设置结算状态
     *
     * @param settlementStatus 结算状态
     */
    public void setSettlementStatus(Byte settlementStatus) {
        this.settlementStatus = settlementStatus;
    }

    /**
     * 获取结算时间
     *
     * @return settlement_time - 结算时间
     */
    public Date getSettlementTime() {
        return settlementTime;
    }

    /**
     * 设置结算时间
     *
     * @param settlementTime 结算时间
     */
    public void setSettlementTime(Date settlementTime) {
        this.settlementTime = settlementTime;
    }

    /**
     * 获取结算备注（商城填写）
     *
     * @return remarks - 结算备注（商城填写）
     */
    public String getRemarks() {
        return remarks;
    }

    /**
     * 设置结算备注（商城填写）
     *
     * @param remarks 结算备注（商城填写）
     */
    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新时间
     *
     * @return update_time - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}